package domain;

import java.util.LinkedList;
import java.util.List;

import data.IEmpresaPublicaDao;
import data.IPresupuestoDao;
import data.IProyectoDao;
import data.ITareaDao;
import data.JDBCEmpresaPublicaDao;
import data.JDBCPresupuestoDao;
import data.JDBCProyectoDao;
import data.JDBCTareaDao;

public class EmpresaPublica {

	private int id;
	private String cif;
	private String nombre;
	private String descripcion;
	private String pass;
	public EmpresaPublica(String cif, String pass) {
		IEmpresaPublicaDao iepdao= new JDBCEmpresaPublicaDao();
		EmpresaPublica ep = iepdao.getEmpresaPublica(cif,pass);
		this.id=ep.getId();
		this.cif=ep.getCif();
		this.nombre=ep.getNombre();
		this.descripcion=ep.getDescripcion();
		this.pass=ep.getPass();
	}
	public EmpresaPublica(){}
	
	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public String getCif() {
		return cif;
	}
	public void setCif(String cif) {
		this.cif = cif;
	}
	public String getNombre() {
		return nombre;
	}
	public void setNombre(String nombre) {
		this.nombre = nombre;
	}
	public String getDescripcion() {
		return descripcion;
	}
	public void setDescripcion(String descripcion) {
		this.descripcion = descripcion;
	}
	public String getPass() {
		return pass;
	}
	public void setPass(String pass) {
		this.pass = pass;
	}
	public boolean login(String usr, String pass){
		IEmpresaPublicaDao ep= new JDBCEmpresaPublicaDao();
		return ep.login(usr,pass);
		
	}
	public boolean crearProyecto(Proyecto p){
		IProyectoDao pro = new JDBCProyectoDao();
		return pro.insertProyecto(p);
		
	}
	
	public List<Proyecto> obtenerProyectos(int idEmpresa){
		IProyectoDao p = new JDBCProyectoDao();
		return p.selectAllDeEmpresaPublica(idEmpresa);
		
	}
	
	public Proyecto buscarProyecto(int idp){
		IProyectoDao p = new JDBCProyectoDao();
		return p.selectProyecto(idp);
	}
	
	public List<Tarea> obtenerTareas(int idp){
		ITareaDao t = new JDBCTareaDao();
		return t.selectAllTarea(idp);
	}
	public boolean insertarTarea(Tarea t) {
		ITareaDao tdao = new JDBCTareaDao();
		return tdao.insertTarea(t);
	}
	public boolean publicarProyecto(int pid) {
		IProyectoDao p = new JDBCProyectoDao();
		return p.publicarProyecto(pid);
	}
	
	public Tarea selectTarea(int id){
		ITareaDao t = new  JDBCTareaDao();
		return t.selectTarea(id);
		
	}
	

}
